#ifndef DSPSIMULATOR_PROGRAMNODE_H
#define DSPSIMULATOR_PROGRAMNODE_H

#include <memory>
#include <vector>
#include <simulatorV1/ast/functionNode.h>
#include <simulatorV1/ast/astnode.h>

/**
 * Ast语法树的根节点，包含一系列的函数节点
 */
class ProgramNode : public AstNode {
public:
    using Functions = std::vector<std::shared_ptr<FunctionNode>>;
    Functions m_functions; // 一系列的函数节点

    ProgramNode() = default;

    ~ProgramNode() override = default;
};

#endif //DSPSIMULATOR_PROGRAMNODE_H
